package ch7strengthen;

import java.sql.SQLOutput;
import java.util.Scanner;

public class HWExer {
    public static void main(String[] args) {

        /*1:定义一个数组，把其中的每个数都放大10倍。*/
        int[] arr = new int []{1,2,3,4,5};
        for(int i =0;i<arr.length;i++){
            arr[i] *=10;
            System.out.print(arr[i] + " ");
        }
      /*  2:定义一个数组存放15名同学的成绩，成绩范围是0-100，如果输入错误，则重新输入。
        最后输出整个数组*/

        System.out.println();
      double arr1 [] = new double[5];
        Scanner scan  = new Scanner(System.in);
        System.out.println("请输入5个同学的成绩（0-100）：");
      for(int i = 0 ;i<arr1.length;i++){
          while(true){
              arr1[i] =scan.nextDouble();
              if(arr1[i]>=0 && arr1[i]<=100){
                  break;
              }
              System.out.println("输入错误，请重新输入！");
          }
      }
      for(int j =0;j<arr1.length;j++){
          System.out.print(arr1[j]+" ");
      }

      /*3：接上题，15名同学，用两个数组，一个存放姓名，一个存放成绩（string和int)
        ,成绩范围是0-100，如果输入错误，则重新输入。
        最后输出所有人的名字和成绩*/
        System.out.println();
      String []name = new String[5];
      int[] score = new int[5];
        System.out.println("请输入这5名同学各自的成绩：");
      for(int i = 0;i<score.length;i++){
          System.out.println("请输入姓名：");
          name[i] =scan.next();
          while(true){
              System.out.println("请输入其分数：");
              score[i] = scan.nextInt();
              if(score[i]>=0&&score[i]<=100){
                  break;
              }else{
                  System.out.println("成绩范围错误请重新输入成绩：");
              }
          }
      }
      for(int k=0;k<score.length;k++){
          System.out.println("姓名：" +name[k]+" " +",成绩："+ score[k]+ " " );
      }

      /**4:改进冒泡排序，排序后保留原来的数的位置
        比如，3，2，4，1这个数组，
        排序后是 1，2，3，4
        则位置信息是3，1，0，2（提示，用一个新数组，保存位置信息，变动的时候位置跟着换）*/
        int bbArr[] = new int[]{5,3,4,1,2};//0 1 2 3 4
        int wzArr[] = new int[bbArr.length];//4 3 2 1 0
        for(int i=0;i<bbArr.length;i++){
            wzArr[i]=i;
        }
        for(int i=0;i<bbArr.length-1;i++){
            for(int j=0;j<bbArr.length-i-1;j++){
                if(bbArr[j]>bbArr[j+1]){//3 2//0  1
                    int temp =bbArr[j];// 2 3//1  0
                    bbArr[j]=bbArr[j+1];
                    bbArr[j+1]=temp;
                    int temp2 =wzArr[j];
                    wzArr[j]=wzArr[j+1];
                    wzArr[j+1]=temp2;
                }
            }
        }
        for(int k=0;k<bbArr.length;k++){
            System.out.print(bbArr[k] +" ");
        }
        System.out.println();
        for(int l=0;l<wzArr.length;l++){
            System.out.print(wzArr[l]+" ");
        }
    }
}
